package com.love.marriage.userActivityInfo.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.love.marriage.common.entity.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * description:  用户活动信息表类
 * author:       mybatisPlus
 * createDate: 2024-11-09 23:53:07
 * version:      1.0.0
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("user_activity_info_t")
@Schema(description = "用户活动信息表")
public class UserActivityInfo extends BaseEntity<UserActivityInfo>{

    @Schema(description = "用户ID，关联用户表", type = "Long", implementation = Long.class)
    @TableField("user_id")
    private Long userId;

    @Schema(description = "性别", type = "String", implementation = String.class)
    @TableField("gender")
    private String gender;

    @Schema(description = "从事行业/职业", type = "String", implementation = String.class)
    @TableField("profession")
    private String profession;

    @Schema(description = "收入情况", type = "String", implementation = String.class)
    @TableField("income_status")
    private String incomeStatus;

    @Schema(description = "省份ID", type = "Long", implementation = Long.class)
    @TableField("province_id")
    private Long provinceId;

    @Schema(description = "城市ID", type = "Long", implementation = Long.class)
    @TableField("city_id")
    private Long cityId;

    @Schema(description = "县区ID", type = "Long", implementation = Long.class)
    @TableField("district_id")
    private Long districtId;

    @Schema(description = "身高 (单位: cm)", type = "BigDecimal", implementation = BigDecimal.class)
    @TableField("height")
    private BigDecimal height;

    @Schema(description = "体重 (单位: kg)", type = "BigDecimal", implementation = BigDecimal.class)
    @TableField("weight")
    private BigDecimal weight;

    @Schema(description = "活动类型（如：dating:发布约会、join_dating:参加约会、join_event：参加活动）", type = "String", implementation = String.class)
    @TableField("activity_type")
    private String activityType;

    @Schema(description = "出生年月", type = "LocalDate", implementation = LocalDate.class)
    @TableField("birth_year_month")
    private LocalDate birthYearMonth;
}
